﻿#pragma once 

#include "Output.h"
#include <string>

class System;
class Transient;
class FileOutput : public Output
{
public:
  FileOutput(const Configuration& cfg);
  virtual ~FileOutput(){};

  void Init() override;
  void Execute() override;

  virtual std::string FileName();
  virtual bool ShouldOutput();
protected:
  const System& _system;
  Transient& _executioner;
  std::string _file_base;
  int _interval;
  bool _out_initial;
};

